package com.easylinkin.linkappapi.crane.dto;

import com.easylinkin.linkappapi.circuit.entity.RailGiveSystemAlarm;
import com.easylinkin.linkappapi.crane.entity.CraneBusinessRecord;
import com.easylinkin.linkappapi.crane.entity.CraneOperationArea;
import com.easylinkin.linkappapi.crane.entity.CraneVerticalProtectionArea;
import com.easylinkin.linkappapi.device.entity.Device;
import com.easylinkin.linkappapi.mechanical.entity.EquipmentLocation;
import com.easylinkin.linkappapi.mechanical.entity.Mechanical;
import com.easylinkin.linkappapi.roster.entity.RailLinkappRosterPersonnel;
import lombok.Data;

import java.util.List;

@Data
public class CraneDTO extends Mechanical {
    /**
     * 业务数据
     */
    private CraneBusinessRecord craneBusinessRecord;
    /**
     * 司机列表
     */
    private List<RailLinkappRosterPersonnel> driverList;
    /**
     * 主机信息
     */
    private Device device;
    /**
     * 北斗定位设备
     */
    private Device beidouDevice;
    /**
     * 定位信息
     */
    private EquipmentLocation equipmentLocation;
    /**
     * 作业区
     */
    private List<CraneOperationArea> operationAreaList;
    /**
     * 垂直保护区
     */
    private List<CraneVerticalProtectionArea> verticalProtectionAreaList;
    /**
     * 是否告警
     */
    private Boolean alarmFlag;
    /**
     * 最新告警
     */
    private RailGiveSystemAlarm newlestAlarm;
    /**
     * 总吊重
     */
    private Double totalWeight;
    /**
     * 总吊装次数
     */
    private Long totalHoistingTimes;
    /**
     * 是否侵限告警
     */
    private Boolean limitAlarmFlag;
    /**
     * 侵限告警信息 顺序 施工防侵限告警>防倾倒侵限告警>距离安全限界告警>机械离开作业区域告警;
     */
    private RailGiveSystemAlarm newlestLimitAlarm;

}
